package com.sharp.kernel.mybatis.dao.entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import javax.persistence.*;
import lombok.Data;

 /**
 * Title: Tables
 * Description: Copyright: Copyright (c) 2022 Company: Sharp Ltd.
 *
 * @author Sharp
 * @date 2022/09/26 23:28
 */
@ApiModel(value="`TABLES`")
@Data
@Table(name = "INFORMATION_SCHEMA.`TABLES`")
public class Tables {
    @Column(name = "TABLE_CATALOG")
    @ApiModelProperty(value="")
    private String tableCatalog;

    @Column(name = "TABLE_SCHEMA")
    @ApiModelProperty(value="")
    private String tableSchema;

    @Column(name = "`TABLE_NAME`")
    @ApiModelProperty(value="")
    private String tableName;

    @Column(name = "TABLE_TYPE")
    @ApiModelProperty(value="")
    private String tableType;

    @Column(name = "ENGINE")
    @ApiModelProperty(value="")
    private String engine;

    @Column(name = "VERSION")
    @ApiModelProperty(value="")
    private Long version;

    @Column(name = "ROW_FORMAT")
    @ApiModelProperty(value="")
    private String rowFormat;

    @Column(name = "TABLE_ROWS")
    @ApiModelProperty(value="")
    private Long tableRows;

    @Column(name = "`AVG_ROW_LENGTH`")
    @ApiModelProperty(value="")
    private Long avgRowLength;

    @Column(name = "DATA_LENGTH")
    @ApiModelProperty(value="")
    private Long dataLength;

    @Column(name = "MAX_DATA_LENGTH")
    @ApiModelProperty(value="")
    private Long maxDataLength;

    @Column(name = "INDEX_LENGTH")
    @ApiModelProperty(value="")
    private Long indexLength;

    @Column(name = "DATA_FREE")
    @ApiModelProperty(value="")
    private Long dataFree;

    @Column(name = "`AUTO_INCREMENT`")
    @ApiModelProperty(value="")
    private Long autoIncrement;

    @Column(name = "CREATE_TIME")
    @ApiModelProperty(value="")
    private Date createTime;

    @Column(name = "UPDATE_TIME")
    @ApiModelProperty(value="")
    private Date updateTime;

    @Column(name = "CHECK_TIME")
    @ApiModelProperty(value="")
    private Date checkTime;

    @Column(name = "TABLE_COLLATION")
    @ApiModelProperty(value="")
    private String tableCollation;

    @Column(name = "`CHECKSUM`")
    @ApiModelProperty(value="")
    private Long checksum;

    @Column(name = "CREATE_OPTIONS")
    @ApiModelProperty(value="")
    private String createOptions;

    @Column(name = "TABLE_COMMENT")
    @ApiModelProperty(value="")
    private String tableComment;
}
